Color transformation

ABSTRACT

An example method of transforming colors for a printing device in accordance with the present disclosure is provided. The color printing device comprises a plurality of printing element, each printing element having an element gamut, represented in 3-D space associated therewith. The method comprises defining a first gamut volume in a 3-D space for the printing device, and transforming the defined first gamut volume into the element gamut to create a second gamut volume in 3-D space for the printing device.

BACKGROUND

Color image processing to convert an image into a printable image, thatis an image capable of being printed, invariably involves some form ofcolor and data transformation to convert the pixels of the color imageinto a printable image comprising a plurality of printable pixels, thatis a pixel capable of being printed, defined by the colors of theprinting device.

This conversion may be achieved by use of a lookup table to map thecolors of the image into the colors of the printable image. In order toachieve accurate conversion and consistency between printing elements(such for example printheads or elements of a printhead) of the printingdevice, the colors printable by the printing device are calibrated andthe lookup table is populated based on the calibration.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding, reference is now made to thefollowing description taken in conjunction with the accompanyingdrawings in which:

FIG. 1 is a simplified schematic diagram of a color printing systemaccording to an example;

FIG. 2 is a simplified schematic diagram of an apparatus for calibratinga printing device according to an example;

FIG. 3 is a flowchart of a method of calibrating a color printing deviceof an example;

FIG. 4 is a flowchart of a method of calibrating a color printing deviceof FIG. 3 in more detail;

FIG. 5 illustrates an example of defining a first gamut volume;

FIGS. 6, 7 a and 7 b illustrate a representation of an example ofcreating the transformation function;

FIG. 8 is an example of a first gamut of the printing elements;

FIGS. 9a and 9b are examples of creating the transformation with a pointoutside of the gamut volume; and

DETAILED DESCRIPTION

In printing system, such as for example, a Page-Wide Array (PWA)printing system having a plurality of neighbouring printing elementswhich print across the media in bands, any differences in the colorsgenerated by each printing element may become visible to the human eyeas the colors are adjacent in bands making any difference, howeverslight, noticeable. Therefore, such printing systems impose very lowcolor difference thresholds. As a result a more accurate color transformis required.

Prior solutions in the industry attempt to define the color transformthrough a general function not bounded by spatial constraints, such as apolynomial or a biharmonic operator. Such approaches lead to successfulinterpolations on those points that lie within the mesh of thetransformation-defining points. However, the transformation of pointsoutside the transformation domain is merely driven by the extrapolationof the behavior in the interior. The problem is that such extrapolationis likely to rapidly diverge and to provide non-accurate positioning ofpoint in the destination space.

One type of prior solution to this is the usage of a tessellation toperform the transformation. However, it is unclear how the tessellationis defined (and furthermore there are no references on whether a gamutboundary is explicitly defined), and also there appears to be nosolution of transforming the points outside of the hull.

Another solution for obtaining a highly detailed gamut description isobviously printing and measuring a large number of patches. The drawbackis the large number of media real state and measurement times requiredto get a certain level of accuracy, which makes the method unfeasiblefor PWA printing systems.

The challenge comes when such accurate calibration is to be done on areduced set of calibration patches, so that the procedure minimizes timeand media waste. Note that, for a PWA printer, each die (or, in somecases, each die portion) counts as an independent printer to becalibrated. This fact multiplies the number of patches to be printed andmeasured.

Further, the use of a tessellation to perform the transformation can notbe used to transform the points outside of the hull as there appears tobe no explicit definition of the gamut boundary.

Another solution for obtaining a highly detailed gamut description isobviously printing and measuring a large number of patches. The drawbackis the large number of media real state and measurement times requiredto get a certain level of accuracy, which makes the method unfeasiblefor PWA printers.

It is assumed that the gamuts of the printing systems (or dies) underconsideration are similar in shape. This assumption is also made byexisting one-dimensional, per-ink solutions.

FIG. 1 illustrates an example of a printing system 100 including imageprocessing apparatus 110. Printing system 100 can be implemented, atleast in part, by one or more suitable computing devices, such ascomputing device 102. Other computing devices that may be used include,but are not limited to, a personal computer, a laptop computer, adesktop computer, a digital camera, a personal digital assistancedevice, a cellular phone, a video player, and other types of imagesources.

In one implementation, an image 104 is uploaded to the computing device102 using input device 108. In other implementations, the image may beretrieved from a previously generated image set contained on a storagemedia, or retrieved from a remote storage location, such as an onlineapplication, using the Internet. Image 104 may be a still digital imagecreated by a digital camera, a scanner, or the like. In otherimplementations the image may be a moving image such as a digital video.Image 104 may be sent to an output device such as printing device 108 bythe computing device 102. Other printing devices that may be usedinclude, but are not limited to, a dot-matrix printer, an inkjetprinter, a laser printer, line printer, a solid ink printer, and anyother kind of digital printer. In other implementations, the image maybe displayed to a user on an output device 108 including, but notlimited to, a TV set of various technologies (Cathode Ray Tube, LiquidCrystal Display, plasma), a computer display, a mobile phone display, avideo projector, a multicolor Light Emitting Diode display, and thelike. The printing device 108 comprises a plurality of printingelements, for example, multiple arrays of ink nozzles for depositing inkonto a printing media 116.

In one implementation, the printing system 100 comprises imageprocessing apparatus 110. The image processing apparatus 110 may beintegral with the computing device 102 or the printing device 108. Theimage processing apparatus 110 includes a color calibration apparatus120.

The color calibration apparatus 120 for calibrating the plurality ofprinting elements of the printing device 108 is shown in FIG. 2. Itcomprises a processor 201 connected to a storage device 209. The storagedevice 209 may be integral with the calibration apparatus 120, orexternal thereto. The color calibration apparatus 120 further comprisesa transformer 203 connected to the processor 201 and a mapper 205. Themapper 205 also accesses the storage device 209. The mapper 205 providesan output on the output terminal 211 of the color calibration apparatus120.

Operation of the color calibration apparatus 120 is described withreference to FIGS. 3 to 9 b. The processor 201 defines, 301, a firstgamut volume in 3-D space to which all printer elements are calibrated.The first gamut is included in the intersection of all the gamuts (sothat all colors provided by the printing elements are calibrated).Therefore, the smallest gamut in the printer (the lightest die)determines the gamut of the whole system.

First, a reference gamut is retrieved from the storage device 209 by theprocessor 201. This may be an arbitrary gamut 500 (as illustrated inFIG. 5) described in high detail (in the order of 9³=729 patches ormore) having a first extreme point 503 near “black” and a second extremepoint 505 near “white”. The reference gamut 500 is then defined by theboundary 501 between the first and second extreme points 503, 505. Thereference gamut may be obtained at development time. The fundamentalidea is that this gamut shape (not its exact position and size)adequately represents the gamut of any of the plurality of printerelements. The reference gamut 500 is then iteratively reduced, 401, 403until fully contained in the smallest of the element gamuts of theprinter elements to be calibrated. The element gamut describes the gamutof the elements in a lower level of detail, in the order of 5³=125patches. This gamut is also retrieved by the processor 201 from thestorage device 209. Alternatively, a printing device may consist of 3printing elements with gamuts of similar volume, but of differentshapes, for example, the first of them could have the smallest gamut inthe Reds, the second one in the greens and the last one in the blues.Then, the reference gamut would be contained in all of them.

Reduction of the reference gamut 500 is achieved by projecting eachpoint to a semi segment that goes from white to a medium gray asillustrated by the arrows 507 shown in FIG. 5. The first gamut 801obtained is depicted in FIG. 8.

The process of build a highly detailed description of the printingdevice 108 to calibrate involves a transformation 305 of thehighly-detailed reference gamut so that it coincides with the elementgamut points location.

The transformation function maps the first gamut volume into the elementvolume, using the few element gamut calibration points as anchors. Aresulting second gamut volume is obtained as shown in FIG. 6. Theelement gamut volume is defined by the boundary 601 between a firstextreme point 607 near “black” and a second extreme point 609 near“white”. The second extreme point of the first gamut volume 500 definedby the boundary 501 is aligned with the second extreme point 609 of thesecond extreme point 609 of the element gamut 601.

The transformation input space 611 of the first gamut volume 801 isdivided in a regular tetrahedral grid as illustrated in FIG. 7a thatmaps to another grid 621 in the output space of the element gamut 601 tobe calibrated. A plurality of anchor points 613, 615, 617 in thetransformation input space 611 form anchor points for the transformationfunction to transform to the points 623, 615, 627 of the transformationoutput space. The transformation function explicitly defines a boundarybetween the interior and the exterior of the transformation hull by thesecond gamut volume. A mapping for all colors can then be created, 309.

For points inside the second gamut volume, 409, a tessellation-basedtransform is used, 413. For points outside of the second gamut volume,as shown in FIGS. 9a and 9b , the relative position of an outlier pointp 901 in the transformation input space 611 is determined according tothe dihedral angle 909 it projects to each of the visible gamut faces411. Therefore, p 901 can be described as a set of weights, barycentriccoordinates and indices to visible simplices 903, 905, 907. Thetransformation of point p 901 to the point of p¹, 921 in the secondgamut volume is determined by weighting barycentric coordinates withdihedral angles for each of the simplices 923,225,927 in thetransformation output space 921 as shown in FIG. 9 b.

As a result the transformation function explicitly defines a boundarybetween the interior and the exterior of the transformation hull, andthat different methods are used to transform points in each of thedomains to create the mappings. The transformation methods oftessellation-based interpolation or the dihedral-angle basedextrapolation are merely examples and it can be appreciated that othertechniques may be used as alternatives.

The transformation function that creates second gamut volume is thenused to create the mapping 309 between the actual colors and thoseprinted by the printing elements. This mapping may be stored as alook-up-table (LUT) or the like.

This may be achieved by tessellating the second gamut volume andinterpolating the position of the actions color within the second gamutvolume tessellation to obtain the mapping to store in an LUT.

The result brings the gamut of a printing device to be calibrated asclose as possible to the gamut of a “reference” printing device. Thesolution is commonly named 3D because it prints and measures pointsacross the whole gamut space (which is three-dimensional, as opposed toClosed Loop Calibration (CLC) which does so only on primary colors inthe ink space, which is one-dimensional).

Points forming a color gamut are transformed according to atransformation function providing significant improvements in accuracywhile reducing the number of required calibration patches.

The fact that the method explicitly defines the boundary between theinterior and exterior of the transformation hull allows the selection ofthe most convenient method for each region. The points outside thetransformation hull are transformed with similar accuracy as the ones inthe interior providing a method close to optimal.

A further benefit of the method is that it delivers a map of a givenstate of a printer/die onto a reference instead of being only anapproximate, unbounded color space transformation. This results ingreater gamut preservation and greater accuracy too.

Although various examples have been illustrated in the accompanyingdrawings and described in the foregoing detailed description, it will beunderstood that the present disclosure is not limited to the examplesdisclosed, but is capable of numerous modifications without departingfrom the scope of the present disclosure as set out in the followingclaims.

What is claimed is:
 1. A method of transforming colors for a printing device, the printing device comprising a plurality of printing elements, each printing element having an element gamut, represented in 3-D space, associated therewith, the method comprising: defining a first gamut volume in a 3-D space for the printing device; and transforming the defined first gamut volume into the element gamut to create a second gamut volume in 3-D space for the printing device.
 2. The method as recited in claim 1, wherein defining the first gamut volume further comprises: iteratively reducing a reference gamut of the printing device until the reference gamut is fully contained within the 3-D space of the element gamut having the smallest volume.
 3. The method as recited in claim 2, wherein iteratively reducing the reference gamut further comprises: projecting each point within the reference gamut to a semi segment that goes from white to gray.
 4. The method as recited in claim 1, wherein transforming the defined first gamut volume further comprises: creating a transformation function to map the first gamut volume forming a first transformation input space into the element gamut forming a second transformation output space, wherein a predetermined number of points within the first gamut volume form anchor points for the transformation function.
 5. The method as recited in claim 4, wherein creating the transformation function further comprises: dividing the first transformation input space into a regular tetrahedral grid to map to another grid in the second transformation space.
 6. The method as recited in claim 5, wherein creating the transformation function further comprises; transforming points located within the second gamut volume by a tessellation-based transformation.
 7. The method as recited in claim 6, wherein creating the transformation function comprises; transformation points located outside the second gamut volume according to the dihedral angle the transformation points projects to each of the faces of the second gamut volume.
 8. An apparatus for transforming colors for a printing device, the printing device to receive a plurality of printing elements, each printing element having an element gamut, represented in 3-D space, associated therewith, the apparatus comprising: a processor to define a first gamut volume in 3-D space for each printing element; and a transformer to transform a reference gamut into each defined first gamut volume to create a second gamut volume in 3-D space for each printing element.
 9. A color printing device for printing an image, the printing device to receive a plurality of printing elements, each printing element having an element gamut represented in 3-D space associated therewith, the color printing device further comprising calibration apparatus, the calibration apparatus comprising: a processor to define a first gamut volume in 3-D space for each printing element; a transformer to transform a reference gamut into each defined first gamut volume to create a second gamut volume in 3-D space for each printing element; a measuring module to measure actual colorimetry of a predetermined set of colors produced by each printing element; and a mapper to create a mapping of the actual colorimetry of the predetermined set of colors produced by each printing element and the corresponding color within the second gamut volume to calibrate the color printing device. 